package common

// Opcode 定义帧类型
type Opcode byte

const (
	OpContinuation Opcode = 0x0 // 继续帧（分片消息）
	OpBinary       Opcode = 0x2 // 二进制帧，本程序只支持二进制帧，不支持文本帧
	OpClose        Opcode = 0x8 // 关闭帧
	OpPing         Opcode = 0x9 // Ping帧
	OpPong         Opcode = 0xA // Pong帧
)

// 检查 Opcode 是否存在于本程序定义中
func checkOpcode(opcode Opcode) error {
	switch opcode {
	case OpContinuation, OpBinary, OpClose, OpPing, OpPong:
		return nil
	default:
		return ErrUnsupportedOpcode
	}
}
